If a streaming medium is available in a mobile device, a user can use the mobile device for listening to music, for example. For music listening applications, audio signals are generally compressed into digital packet formats for transmission. The transmission of compressed digital audio, such as MP3 (MPEG-1/2 layer 3), over the Internet has already had a profound effect on the traditional process of music distribution. Recent developments in the audio signal compression field have rendered streaming digital audio using mobile terminals possible. With the increase in network traffic, a loss of audio packets due to traffic congestion or excessive delay in the packet network is likely to occur. Moreover, the wireless channel is another source of errors that can also lead to packet losses. Under such conditions, it is crucial to improve the quality of service (QoS) in order to induce widespread acceptance of music streaming applications.
To mitigate the degradation of sound quality due to packet loss, various prior art techniques and their combinations have been proposed. UEP (unequal error protection), a subclass of forward error correction (FEC), is one of the important concepts in this regard. UEP has been proven to be a very effective tool for protecting compressed domain audio bitstreams, such as MPEG AAC (Advanced Audio Coding), where bits are divided into different classes according to their bit error sensitivities. Using UEP for error concealment of percussive sound has been disclosed in U.S. patent application Ser. No. 10/281,395.
In another approach, Korhonen (“Error Robustness Scheme for Perceptually Coded Audio Based on Interframe Shuffling of Samples”, Proc. of IEEE International Conference on Acoustics, Speech and Signal Processing 2002, Orlando Fla., pp. 2053–2056, May 2002) separates an audio frame to two parts: a critical data part and a less critical data part. The payload including the critical data part is transported via a reliable means, such as TCP (Transmission Control Protocol), while the less critical data part is transported by such means as UDP (User Datagram Protocol).
However, due to the error characteristics of mobile IP networks and the constraints on latency, packet delivery in the various UEP schemes and the selective retransmission schemes is still not very reliable. Especially when errors are due to packet losses in the congested IP networks, bit errors in wireless air interfaces, and hand-over in cellular networks. Thus, it is advantageous and desirable to provide a robust method and system for high quality audio streaming over packet networks, such as mobile IP networks, 2.5 G and 3 G networks and bluetooth. Such method and system must take into account the required computational complexity and memory/power consumption.
MPEG-2/MPEG-4 AAC coders and their related data structure are known in the art. The data structure of an AAC frame is shown in FIG. 1. The frame comprises a critical data part (e.g. header), the scale factors and Quantized Modified Discrete Cosine Transform coefficients (QMDCT data). An MPEG-2 decoder is shown in FIG. 2. As shown, the decoder 10 comprises a bitstream demultiplexer for receiving a 13818-7 coded audio stream 200 and providing signals (thinner lines) and data (thick line) to various decoding tools in the decoder. The tools in the decoder 10 comprise a gain control module, an AAC spectral processing block and an AAC decoding block. As shown in FIG. 2, the critical data part 110 in an AAC frame can be obtained from the signals 220 and data 230 provided by the bitstream demultiplexer. The QMDCT data 112 can be obtained from the output of the noiseless decoding tool. The scale factors 114 can be obtained from the output of the scale factors decoding tool. In prior art, error concealment is mostly carried out in the time domain (PCM sample 240, for example) or spectral domain (MDCT and IMDCT coefficients, for example). The prior art solutions require more on memory, computation and power consumption. When audio streaming is carried out in a mobile terminal, it is desirable to use an error concealment method where memory requirement, computation complexity and power consumption can be substantially reduced.